package com.wang.gulimall.coupon;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.openfeign.EnableFeignClients;


/**
 * 如何使用Nacos作为配置中心统一管理配置
 *      1、引入依赖
 *      2、创建一个bootstrap.properties文件，优先于application文件加载并添加如下信息
 *      spring.application.name=gulimall-coupon
 *      spring.cloud.nacos.config.server-addr=127.0.0.1:8848
 *      3、在配置中心可视化界面中添加一个数据ID（Data Id）gulimall-coupon。命名默认规则：应用名字.properties
 *      4、给 应用名.properties 添加任何配置
 *      5动态获取nacos配置
 *      @RefreshScope：动态获取并刷新配置（实时）
 *      @Value（${配置名字}）：获取配置
 *
 *  使用nacos的细节
 *      1）、命名空间：配置隔离作用（默认为public命名空间，新增的配置默认在存在这个public命名空间下）
 *          1、开发、测试、生产环境之间的隔离
 *          2、每个微服务之间的相互隔离，每个微服务都有自己的命名空间，只加载自己的所有配置
 *      spring.cloud.nacos.config.namespace=命名空间
 *      2）、配置集：一组相关或者不相关的配置项的集合称为配置集
 *      3）、配置集ID：Nacos 中的某个配置集的 ID
 *      4）、配置分组：给配置集进行分组
 *
 */
@SpringBootApplication
@EnableDiscoveryClient
public class GulimallCouponApplication {

    public static void main(String[] args) {
        SpringApplication.run(GulimallCouponApplication.class, args);
    }

}
